#define _CRT_SECURE_NO_WARNINGS 1
#include"SList.h"

void SLTtest() {
	SLTNode* node1 = (SLTNode*)malloc(sizeof(SLTNode));
	node1->data = 1;
	SLTNode* node2 = (SLTNode*)malloc(sizeof(SLTNode));
	node2->data = 2;
	SLTNode* node3 = (SLTNode*)malloc(sizeof(SLTNode));
	node3->data = 3;
	SLTNode* node4 = (SLTNode*)malloc(sizeof(SLTNode));
	node4->data = 4;

	node1->next = node2;
	node2->next = node3;
	node3->next = node4;
	node4->next = NULL;

	SLTNode* plist = node1;
	SLTPrint(plist);
}

void SLTtest2() {
	SLTNode* plist = NULL;
	SLTPushBack(&plist, 1); 
	SLTPushBack(&plist, 2);
	SLTPushBack(&plist, 3);
	SLTPushFront(&plist, 4);
	SLTPushFront(&plist, 5);
	SLTPushFront(&plist, 6); 
	SLTPrint(plist);
	SLTDelBack(&plist);
	SLTPrint(plist);
	SLTDelFront(&plist);
	SLTPrint(plist);
	SLTNode* find=SLTFind(plist, 2);
	SLTInsertAfter(find, 4);
	SLTPrint(plist);
	SLTInsert(&plist,find , 10);
	SLTPrint(plist);
	SLTEraseAfter(&plist, find);
	SLTPrint(plist);
	SLTDeatroy(&plist);
}
int main() {
	//SLTtest();
	SLTtest2();
}